class Solution2 {
    public int minCostClimbingStairs(int[] cost) {
        int n = cost.length;
        //1.创建表
        int[] dp = new int[n];

        //2.初始化
        dp[n-1] = cost[n-1];
        dp[n-2] = cost[n-2];

        //3.填表
        for(int i = n-3; i >= 0; i--) {
            dp[i] = cost[i] + Math.min(dp[i+1], dp[i+2]);
        }

        //4. 返回值
        return Math.min(dp[0], dp[1]);
    }
}